#pragma once

#include <string>

// Google includes
#include <gtest/gtest.h>
#include <gmock/gmock.h>

#include "MockNode.h"

struct TestNodeFactory
{
    MOCK_CONST_METHOD2(createNodeOr, TestNodeOr *(TestNode * pLeftNode, TestNode * pRightNode));
    MOCK_CONST_METHOD2(createNodeAnd, TestNodeAnd * (TestNode * pLeftNode, TestNode * pRightNode));
    MOCK_CONST_METHOD1(createNodeNot, TestNodeNot * (TestNode * pNode));
    MOCK_CONST_METHOD1(createNodeAtom, TestNodeAtom * (const std::string & sText));
};
